package com.lcc.lynx.base.system.pojo;

import lombok.Data;
import com.lcc.lynx.jdbc.pojo.TablePojo;
import com.lcc.lynx.jdbc.annotation.Table;
import com.lcc.lynx.jdbc.annotation.TableId;
import com.lcc.lynx.jdbc.annotation.FieldLabel;
import java.util.Date;
import com.lcc.lynx.jdbc.annotation.InsertRequired;
import java.util.List;

/** 
 * 部门管理实体
 * @auth lcc
 * @date 2025-07-28
 */
@Data
@Table("sys_dept")
public class SysDept extends TablePojo {

	/** 部门id */
	@TableId
	@FieldLabel("部门id")
	private Long deptId;

	/** 父部门id */
	@FieldLabel("父部门id")
	private Long pid;

	/** 部门名称 */
	@InsertRequired
	@FieldLabel("部门名称")
	private String deptName;

	/** 排序 */
	@FieldLabel("排序")
	private Short sort;

	/** 创建时间 */
	@FieldLabel("创建时间")
	private Date createTime;

	/** 状态 */
	@FieldLabel("状态")
	private Short state;

	/** 备注 */
	@FieldLabel("备注")
	private String remark;

	public void setDeptIdInList(List<Long> deptIdList){ put("deptIdInList", deptIdList); }
	public void setDeptNameLike(String deptNameLike){ put("deptNameLike", deptNameLike); }
	public void setDeptNameLikeL(String deptNameLikeL){ put("deptNameLikeL", deptNameLikeL); }
	public void setCreateTimeStart(String createTimeStart){ put("createTimeStart", createTimeStart); }
	public void setCreateTimeEnd(String createTimeEnd){ put("createTimeEnd", createTimeEnd); }
	public void setStateInList(List<Short> stateList){ put("stateInList", stateList); }
}